package com.yuandian.enums;

/**
 * <p>
 * 返回码
 * <p>
 *
 * @author fucx
 * @date 2020/12/09
 */
public enum ApiResultCodeEnum {

	//验证码错误
	VERIFICATION_CODE_WRONG(100012,"验证码不正确,请重新输入"),

	//登录异常
	LOGIN_FAILED(100011,"账号与密码不匹配，请重新输入"),

	//用戶已停用
	DISABLE_USER(100013,"登录失败,登录用户已停用"),

	//用户未分配角色
	NO_ASSIGN_ROLES(100014,"登录失败,登录用户未分配角色"),

	//用户已被删除
	USER_DELETED(100015, "账号已删除,请联系管理员"),

	//用户配置角色权限已停用
	STOP_ALL_ROLE_AUTH(100015, "登录失败,登录用户配置的角色权限已停用"),

	// 正常返回
	SUCCESS(200, "success"),

	// 无权访问
	AUTHENTICATION_FAILED(9999, "无权访问"),

	// 数据不存在，操作失败
	NO_EXISTS_DATA(9998, "数据不存在，操作失败"),

	// Excel相关
	EXPORT_EXCEL_ERROR(7001, "导出Excel文件失败！"),

	// 业务服务资源相关
	RESOURCE_SAME_IDENTIFY(7100, "已存在相同的识别字符串"),

	// 表相关
	NO_EXIST_TABLE_CYCLE(1001, "所选时间已超出数据保存时间范围！"),
	FIND_CYCLE_TABLE_ERROR(1002, "不支持跨天查询或所选时间已超出数据保存时间范围！"),
	NO_EXIST_TABLE_DYNAMIC(1003, "时间范围对应的查询表不存在！"),
	NO_EXIST_PARTITION_TABLE_DYNAMIC(1003, "时间范围部分表不存在！"),

	// 告警类
	ALARM_TEMPLATE_CONTENT_ERROR(2001, "模板变量不存在！"),
	ALARM_INDICATOR_CHECK_EXP_ERROR(2002, "表达式验证不通过！"),

	//系统配置管理
	SYSTEM_CONFIG_EXIST_SYSTEM(3001,"同名系统已经存在！"),
	SYSTEM_CONFIG_EXIST_BUSI_SEGMENT(3002,"请先删除该系统下的业务和端！"),
	SYSTEM_CONFIG_EXIST_ALARM(3003,"请先删除该系统下的告警配置！"),
	SYSTEM_CONFIG_MAX_LIMIT(3004,"添加系统数量超过可配置数量，请联系源典工作人员！"),
	IT_ROAD_SERVER_RESOURCE_NO_EXIT(3007,"IT端组件服务资源不存在"),
	IT_ROAD_SERVER_RESOURCE_EXIT(3008,"IT端组件服务资源已存在"),

	//后台配置管理--运行配置
	VERSION_MODULE_EXIST(4001,"删除系统版本里面已有模块关联，请先解绑关联！"),
	VERSION_MODULE_EXIST_CODE(4002,"已存在相同的系统版本编号！"),
	VERSION_MODULE_EXIST_MODULE_CODE(4003,"已存在相同的模块编码！"),
	VERSION_LICENSE_CHECK(4005,"授权License失败！"),

	MODULE_CONFIG_EXIST_GROUP_ID(4006,"相同模块GROUPID不能相同！"),
	MODULE_CONFIG_EXIST(4007,"已存在相同配置信息！"),

	//自监控管理--agent状态监控管理
	AGENT_WARN_MESSAGE(5001,"不允许删除最近十分钟内有采集数据的Agent"),

	// 业务配置管理
	BUSINESS_CONFIG_MAX_LIMIT(3004,"添加业务数量超过可配置数量，请联系源典工作人员！");

	private Integer code;

	private String msg;

	ApiResultCodeEnum(Integer code, String msg) {
		this.code = code;
		this.msg = msg;
	}

	public Integer getCode() {
		return code;
	}

	public String getMsg() {
		return msg;
	}

	@Override
	public String toString() {
		return "返回码：" + this.code + ",返回信息：" + this.msg;
	}
}
